{{tag>SGBD bureautique}}

----

====== Connexion à une base de donnée Mysql sous LibreOffice ======


Cette page présente la mise en place d'une connexion entre une base MySQL et LibreOffice.

===== Introduction =====

Description des logiciels utilisés :

  * [[:Mysql]] est un serveur de bases de données relationnelles SQL.
  * [[wpfr>ODBC]] : format de [[wpfr>Microsoft]] permettant la communication entre des clients et la plupart des [[wpfr>SGBD]].
  * [[:LibreOffice]], le logiciel libre de bureautique de référence.

Vous pouvez vous connectez avec Base de trois manières:
  * [[#Avec l'extension libreoffice-mysql-connector|Avec une extension pour libreoffice]],
  * [[#Avec le pilote JDBC]],
  * [[#Avec le pilote ODBC]],

=====Avec l'extension libreoffice-mysql-connector=====
Ce qui suit est valable à partir de Libreoffice 4.2.
[[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt>libreoffice-mysql-connector]]** qui est une extension de connexion MariaDB/MySQL pour LibreOffice.
Actuellement avec Ubuntu 16.04 libreoffice-mysql-connector est installé avec libreoffice base 5.1.4.2. Malheureusement il souffre de la bogue notée en https://bugs.documentfoundation.org/show_bug.cgi?id=99987. Comme indiqué en ce lieu le JDBC fonctionne.

===== Avec un pilote JDBC =====
[[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt>libha-jdbc-java]]**.
Dans Libreoffice, avant de pouvoir utiliser un pilote JDBC, vous devez ajouter son chemin de classe. Choisissez //Outils -> Options -> LibreOffice -> Avancé//, et cliquez sur le bouton Chemin de classe. Naviguez jusqu'à l'archive qui se trouve dans ///usr/share/java/mysql-connector-java-5.1.28.jar//. Après avoir ajouté les informations de chemin, redémarrez LibreOffice.

===== Avec un pilote ODBC =====

<note warning>À l'heure actuelle cette solution ne fonctionne pas, si quelqu'un trouve les bons paramètres, son aide est la bienvenue.</note>

Commencez par [[:tutoriel:comment_installer_un_paquet|installer les paquets]] **[[apt>libmyodbc]]** et **[[apt>unixodbc-bin]]**.

Maintenant lancez **Unixodbc** avec les [[:Sudo|droits d'adminstration]], pour créer le pilote. Entrez la comamnde suivante dans un [[:terminal]] : <code>gksudo ODBCManageDataSourcesQ4</code>
  * Allez dans //Advanced//,
  * Pouis dans l'onglet //drivers//, bouton //add//: FIXME pour toute cette partie
<file>
name: Mysql
description: Mysql driver
driver: 
ou en 64 bits:  /usr/lib/x86_64-linux-gnu/odbc/libmyodbc.so
setup: /usr/lib/x86_64-linux-gnu/odbc/libodbcmyS.so
setup64
</file>
Laissez le reste par défaut et fermez **ODBCManageDataSourcesQ4**.

On va maintenant lancer **ODBCManageDataSourcesQ4** en tant qu'utilisateur : <code>ODBCManageDataSourcesQ4</code> 
 
Onglet //user dns//, bouton //add//, sélectionnez le pilote nommé //Mysql//, puis cliquez sur le bouton //OK//
<file>
name: nom_de_la_base
server: localhost
database: nom_de_la_base
</file>

Laissez le reste par défaut et fermez **ODBCManageDataSourcesQ4**.


===== Connection à la base de donnée=====

Dans LibreOffice :
  * Onglet //Fichier -> Nouveau -> Base de données//,
  * Cochez la case //Se connecter à une base de données existante//, puis sélectionnez //Mysql// dans la liste au-dessous,
  * Cliquez sur le bouton //Suivant//,
  * Si vous avez installé:
    * L'extension, choisissez //Connecter directement//, 
    * Si vous avez activé le pilote ODBC choisissez //Connection utilisant ODBC//,
    * Si vous avez activé le pilote JDBC choisissez //Connection utilisant JDBC//,
  * Cliquez sur le bouton //Suivant//
  * Dans le cas d'une connexion directe et JDBC remplissez les champs comme suit:
    *  //Nom de la base de données//, entrez //le nom de votre base de donnée//;
    * "Serveur", entrez //localhost//, si la base se trouve sur votre pc, ou l'adresse IP d'un autre serveur, 
  * Cliquez sur le bouton //Suivant//,
  * Tapez le nom d'utilisateur que vous utilisez pour accéder à votre base, et suivant la configuration de votre serveur MySQL, cochez ou non //Password required//,
  * Cliquez sur le bouton //Terminer//.

Ça y est, vous avez maintenant accès à votre base MySQL sous LibreOffice. 

===== Notes =====

  * Pour accéder rapidement aux bases de données, tapez sur la touche F4 sous LibreOffice.
  * Pour supprimer une base de données sous LibreOffice : onglet //outils/options -> LibreOffice Base -> base de données//

===== Voir aussi =====
  * Page principale de [[:LibreOffice]]

----

//Contributeurs : [[:utilisateurs:Yeffries]], [[:utilisateurs:l_africain|L'Africain]], [[:utilisateurs:Poupoul2]]//